module.exports = options => {
    return async function publicHandle(ctx, next){
      
        await next()

        if (ctx.status !== 200 && !ctx.body && ctx.state.result) {
            if (ctx.acceptJSON) {
                ctx.body = ctx.state.result.data;
            } else {
                ctx.render('error', ctx.state.result.data);
            }
        }    
    }
}